﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Solution.Business.Component;
using Solution.Business.Entities;
using Solution.Data;
using System.Web.Security;

namespace Solution.UI.Web.Controllers
{
    public class AccountController : Controller
    {
        //
        // GET: /Account/

        public ActionResult LogOn()
        {
            return PartialView();
        }

        [HttpPost]
        public ActionResult LogOn(User model, string submitButton)
        {
            switch (submitButton)
            {
                case "Log On":
                    if (model.UserName != null && model.Password != null)
                    {
                        var list = Business.Component.UserComponent.User_GetByTop("5", "UserName ='" + model.UserName + "' and Password='" + model.Password + "'", "");
                        if (list.Count > 0)
                        {
                            Session["UserId"] = list[0].UId;
                            Session["UserName"] = list[0].UserName;
                            Session["password"] = list[0].Password;
                            //return RedirectToAction("Index");
                        }
                        else
                        {
                            ModelState.AddModelError("", "Tên đăng nhập hoặc mật khẩu không đúng");
                        }
                    }
                    else
                    {
                        ModelState.AddModelError("", "Chưa nhập tên đăng nhập hoặc mật khẩu");
                    }
                    break;
            }

            //if (model.UserName != null && model.Password != null)
            //{
            //    var list = Business.Component.UserComponent.User_GetByTop("5", "Username ='" + model.UserName + "' and Password='" + model.Password + "'", "");
            //    if (list.Count > 0)
            //    {
            //        Session["UserId"] = list[0].UId;
            //        Session["UserName"] = list[0].UserName;
            //        Session["password"] = list[0].Password;

            //    }
            //    else
            //    {
            //        ModelState.AddModelError("", "Tên đăng nhập hoặc mật khẩu không đúng");
            //    }
            //}
            //else
            //{
            //    ModelState.AddModelError("","Chưa nhập tên đăng nhập hoặc mật khẩu");
            //}

            return PartialView(model);
        }

        public ActionResult Register()
        {
            return View();
        }
        [HttpPost]
        public ActionResult Register(User user)
        {
            if (user.Name != null && user.UserName != null && user.Password != null && user.Email != null && user.Phone != null)
            {
                Business.Component.UserComponent.User_Insert(user);
                return RedirectToAction("Index", "Home");
            }

            else
            {
                ModelState.AddModelError("", "Bạn chưa điền đầy đủ thông tin cần nhập!");
            }

            return View(user);
        }

        public ActionResult LogOut(FormCollection form, string submitButton)
        {
            FormsAuthentication.SignOut();
            Session["UserId"] = null;
            Session["UserName"] = null;
            Session["password"] = null;
            return RedirectToAction("Index", "Home");
        }
    }
}
